using System; 
using System.Text; 
using System.Data;
using System.Data.SqlClient;
using System.Data.Common;
using System.Collections;
using System.Collections.Generic;
using System.ComponentModel;
using System.Configuration; 
using System.Xml; 
using System.Xml.Serialization;
using SubSonic; 
using SubSonic.Utilities;

namespace Adex{
    /// <summary>
    /// Strongly-typed collection for the VOutDoorLog class.
    /// </summary>
    [Serializable]
    public partial class VOutDoorLogCollection : ReadOnlyList<VOutDoorLog, VOutDoorLogCollection>
    {        
        public VOutDoorLogCollection() {}

    }

    /// <summary>
    /// This is  Read-only wrapper class for the vOutDoorLog view.
    /// </summary>
    [Serializable]
    public partial class VOutDoorLog : ReadOnlyRecord<VOutDoorLog> 
    {
    
	    #region Default Settings
	    protected static void SetSQLProps() 
	    {
		    GetTableSchema();
	    }

	    #endregion
        #region Schema Accessor
	    public static TableSchema.Table Schema
        {
            get
            {
                if (BaseSchema == null)
                {
                    SetSQLProps();
                }

                return BaseSchema;
            }

        }

    	
        private static void GetTableSchema() 
        {
            if(!IsSchemaInitialized)
            {
                //Schema declaration
                TableSchema.Table schema = new TableSchema.Table("vOutDoorLog", TableType.View, DataService.GetInstance("Adex"));
                schema.Columns = new TableSchema.TableColumnCollection();
                schema.SchemaName = "dbo";
                //columns
                
                TableSchema.TableColumn colvarOutdoorLogID = new TableSchema.TableColumn(schema);
                colvarOutdoorLogID.ColumnName = "OutdoorLogID";
                colvarOutdoorLogID.DataType = DbType.Int32;
                colvarOutdoorLogID.MaxLength = 0;
                colvarOutdoorLogID.AutoIncrement = false;
                colvarOutdoorLogID.IsNullable = false;
                colvarOutdoorLogID.IsPrimaryKey = false;
                colvarOutdoorLogID.IsForeignKey = false;
                colvarOutdoorLogID.IsReadOnly = false;
                
                schema.Columns.Add(colvarOutdoorLogID);
                
                TableSchema.TableColumn colvarCountryID = new TableSchema.TableColumn(schema);
                colvarCountryID.ColumnName = "CountryID";
                colvarCountryID.DataType = DbType.Byte;
                colvarCountryID.MaxLength = 0;
                colvarCountryID.AutoIncrement = false;
                colvarCountryID.IsNullable = true;
                colvarCountryID.IsPrimaryKey = false;
                colvarCountryID.IsForeignKey = false;
                colvarCountryID.IsReadOnly = false;
                
                schema.Columns.Add(colvarCountryID);
                
                TableSchema.TableColumn colvarRFDate = new TableSchema.TableColumn(schema);
                colvarRFDate.ColumnName = "RFDate";
                colvarRFDate.DataType = DbType.DateTime;
                colvarRFDate.MaxLength = 0;
                colvarRFDate.AutoIncrement = false;
                colvarRFDate.IsNullable = true;
                colvarRFDate.IsPrimaryKey = false;
                colvarRFDate.IsForeignKey = false;
                colvarRFDate.IsReadOnly = false;
                
                schema.Columns.Add(colvarRFDate);
                
                TableSchema.TableColumn colvarMediaCode = new TableSchema.TableColumn(schema);
                colvarMediaCode.ColumnName = "MediaCode";
                colvarMediaCode.DataType = DbType.Int32;
                colvarMediaCode.MaxLength = 0;
                colvarMediaCode.AutoIncrement = false;
                colvarMediaCode.IsNullable = true;
                colvarMediaCode.IsPrimaryKey = false;
                colvarMediaCode.IsForeignKey = false;
                colvarMediaCode.IsReadOnly = false;
                
                schema.Columns.Add(colvarMediaCode);
                
                TableSchema.TableColumn colvarTimeStart = new TableSchema.TableColumn(schema);
                colvarTimeStart.ColumnName = "TimeStart";
                colvarTimeStart.DataType = DbType.Int32;
                colvarTimeStart.MaxLength = 0;
                colvarTimeStart.AutoIncrement = false;
                colvarTimeStart.IsNullable = true;
                colvarTimeStart.IsPrimaryKey = false;
                colvarTimeStart.IsForeignKey = false;
                colvarTimeStart.IsReadOnly = false;
                
                schema.Columns.Add(colvarTimeStart);
                
                TableSchema.TableColumn colvarTimeEnd = new TableSchema.TableColumn(schema);
                colvarTimeEnd.ColumnName = "TimeEnd";
                colvarTimeEnd.DataType = DbType.Int32;
                colvarTimeEnd.MaxLength = 0;
                colvarTimeEnd.AutoIncrement = false;
                colvarTimeEnd.IsNullable = true;
                colvarTimeEnd.IsPrimaryKey = false;
                colvarTimeEnd.IsForeignKey = false;
                colvarTimeEnd.IsReadOnly = false;
                
                schema.Columns.Add(colvarTimeEnd);
                
                TableSchema.TableColumn colvarTimeStartFormatted = new TableSchema.TableColumn(schema);
                colvarTimeStartFormatted.ColumnName = "TimeStartFormatted";
                colvarTimeStartFormatted.DataType = DbType.String;
                colvarTimeStartFormatted.MaxLength = 10;
                colvarTimeStartFormatted.AutoIncrement = false;
                colvarTimeStartFormatted.IsNullable = true;
                colvarTimeStartFormatted.IsPrimaryKey = false;
                colvarTimeStartFormatted.IsForeignKey = false;
                colvarTimeStartFormatted.IsReadOnly = false;
                
                schema.Columns.Add(colvarTimeStartFormatted);
                
                TableSchema.TableColumn colvarTimeEndFormatted = new TableSchema.TableColumn(schema);
                colvarTimeEndFormatted.ColumnName = "TimeEndFormatted";
                colvarTimeEndFormatted.DataType = DbType.String;
                colvarTimeEndFormatted.MaxLength = 10;
                colvarTimeEndFormatted.AutoIncrement = false;
                colvarTimeEndFormatted.IsNullable = true;
                colvarTimeEndFormatted.IsPrimaryKey = false;
                colvarTimeEndFormatted.IsForeignKey = false;
                colvarTimeEndFormatted.IsReadOnly = false;
                
                schema.Columns.Add(colvarTimeEndFormatted);
                
                TableSchema.TableColumn colvarSize = new TableSchema.TableColumn(schema);
                colvarSize.ColumnName = "Size";
                colvarSize.DataType = DbType.Int32;
                colvarSize.MaxLength = 0;
                colvarSize.AutoIncrement = false;
                colvarSize.IsNullable = true;
                colvarSize.IsPrimaryKey = false;
                colvarSize.IsForeignKey = false;
                colvarSize.IsReadOnly = false;
                
                schema.Columns.Add(colvarSize);
                
                TableSchema.TableColumn colvarQuality = new TableSchema.TableColumn(schema);
                colvarQuality.ColumnName = "Quality";
                colvarQuality.DataType = DbType.String;
                colvarQuality.MaxLength = 50;
                colvarQuality.AutoIncrement = false;
                colvarQuality.IsNullable = true;
                colvarQuality.IsPrimaryKey = false;
                colvarQuality.IsForeignKey = false;
                colvarQuality.IsReadOnly = false;
                
                schema.Columns.Add(colvarQuality);
                
                TableSchema.TableColumn colvarRealCost = new TableSchema.TableColumn(schema);
                colvarRealCost.ColumnName = "RealCost";
                colvarRealCost.DataType = DbType.Currency;
                colvarRealCost.MaxLength = 0;
                colvarRealCost.AutoIncrement = false;
                colvarRealCost.IsNullable = true;
                colvarRealCost.IsPrimaryKey = false;
                colvarRealCost.IsForeignKey = false;
                colvarRealCost.IsReadOnly = false;
                
                schema.Columns.Add(colvarRealCost);
                
                TableSchema.TableColumn colvarLatLong = new TableSchema.TableColumn(schema);
                colvarLatLong.ColumnName = "LatLong";
                colvarLatLong.DataType = DbType.String;
                colvarLatLong.MaxLength = 50;
                colvarLatLong.AutoIncrement = false;
                colvarLatLong.IsNullable = true;
                colvarLatLong.IsPrimaryKey = false;
                colvarLatLong.IsForeignKey = false;
                colvarLatLong.IsReadOnly = false;
                
                schema.Columns.Add(colvarLatLong);
                
                TableSchema.TableColumn colvarNoOfAds = new TableSchema.TableColumn(schema);
                colvarNoOfAds.ColumnName = "NoOfAds";
                colvarNoOfAds.DataType = DbType.Int32;
                colvarNoOfAds.MaxLength = 0;
                colvarNoOfAds.AutoIncrement = false;
                colvarNoOfAds.IsNullable = true;
                colvarNoOfAds.IsPrimaryKey = false;
                colvarNoOfAds.IsForeignKey = false;
                colvarNoOfAds.IsReadOnly = false;
                
                schema.Columns.Add(colvarNoOfAds);
                
                TableSchema.TableColumn colvarTotalAdsInThatLocation = new TableSchema.TableColumn(schema);
                colvarTotalAdsInThatLocation.ColumnName = "TotalAdsInThatLocation";
                colvarTotalAdsInThatLocation.DataType = DbType.Int32;
                colvarTotalAdsInThatLocation.MaxLength = 0;
                colvarTotalAdsInThatLocation.AutoIncrement = false;
                colvarTotalAdsInThatLocation.IsNullable = true;
                colvarTotalAdsInThatLocation.IsPrimaryKey = false;
                colvarTotalAdsInThatLocation.IsForeignKey = false;
                colvarTotalAdsInThatLocation.IsReadOnly = false;
                
                schema.Columns.Add(colvarTotalAdsInThatLocation);
                
                TableSchema.TableColumn colvarTypeOfAds = new TableSchema.TableColumn(schema);
                colvarTypeOfAds.ColumnName = "TypeOfAds";
                colvarTypeOfAds.DataType = DbType.Int32;
                colvarTypeOfAds.MaxLength = 0;
                colvarTypeOfAds.AutoIncrement = false;
                colvarTypeOfAds.IsNullable = true;
                colvarTypeOfAds.IsPrimaryKey = false;
                colvarTypeOfAds.IsForeignKey = false;
                colvarTypeOfAds.IsReadOnly = false;
                
                schema.Columns.Add(colvarTypeOfAds);
                
                TableSchema.TableColumn colvarVisibilityCode = new TableSchema.TableColumn(schema);
                colvarVisibilityCode.ColumnName = "VisibilityCode";
                colvarVisibilityCode.DataType = DbType.Int32;
                colvarVisibilityCode.MaxLength = 0;
                colvarVisibilityCode.AutoIncrement = false;
                colvarVisibilityCode.IsNullable = true;
                colvarVisibilityCode.IsPrimaryKey = false;
                colvarVisibilityCode.IsForeignKey = false;
                colvarVisibilityCode.IsReadOnly = false;
                
                schema.Columns.Add(colvarVisibilityCode);
                
                TableSchema.TableColumn colvarVerificationDate = new TableSchema.TableColumn(schema);
                colvarVerificationDate.ColumnName = "VerificationDate";
                colvarVerificationDate.DataType = DbType.DateTime;
                colvarVerificationDate.MaxLength = 0;
                colvarVerificationDate.AutoIncrement = false;
                colvarVerificationDate.IsNullable = true;
                colvarVerificationDate.IsPrimaryKey = false;
                colvarVerificationDate.IsForeignKey = false;
                colvarVerificationDate.IsReadOnly = false;
                
                schema.Columns.Add(colvarVerificationDate);
                
                TableSchema.TableColumn colvarVerificationDesc = new TableSchema.TableColumn(schema);
                colvarVerificationDesc.ColumnName = "VerificationDesc";
                colvarVerificationDesc.DataType = DbType.String;
                colvarVerificationDesc.MaxLength = 50;
                colvarVerificationDesc.AutoIncrement = false;
                colvarVerificationDesc.IsNullable = true;
                colvarVerificationDesc.IsPrimaryKey = false;
                colvarVerificationDesc.IsForeignKey = false;
                colvarVerificationDesc.IsReadOnly = false;
                
                schema.Columns.Add(colvarVerificationDesc);
                
                TableSchema.TableColumn colvarCarrierCode = new TableSchema.TableColumn(schema);
                colvarCarrierCode.ColumnName = "CarrierCode";
                colvarCarrierCode.DataType = DbType.Int32;
                colvarCarrierCode.MaxLength = 0;
                colvarCarrierCode.AutoIncrement = false;
                colvarCarrierCode.IsNullable = true;
                colvarCarrierCode.IsPrimaryKey = false;
                colvarCarrierCode.IsForeignKey = false;
                colvarCarrierCode.IsReadOnly = false;
                
                schema.Columns.Add(colvarCarrierCode);
                
                TableSchema.TableColumn colvarProdVersionID = new TableSchema.TableColumn(schema);
                colvarProdVersionID.ColumnName = "ProdVersionID";
                colvarProdVersionID.DataType = DbType.Int32;
                colvarProdVersionID.MaxLength = 0;
                colvarProdVersionID.AutoIncrement = false;
                colvarProdVersionID.IsNullable = true;
                colvarProdVersionID.IsPrimaryKey = false;
                colvarProdVersionID.IsForeignKey = false;
                colvarProdVersionID.IsReadOnly = false;
                
                schema.Columns.Add(colvarProdVersionID);
                
                TableSchema.TableColumn colvarProductID = new TableSchema.TableColumn(schema);
                colvarProductID.ColumnName = "ProductID";
                colvarProductID.DataType = DbType.Int32;
                colvarProductID.MaxLength = 0;
                colvarProductID.AutoIncrement = false;
                colvarProductID.IsNullable = true;
                colvarProductID.IsPrimaryKey = false;
                colvarProductID.IsForeignKey = false;
                colvarProductID.IsReadOnly = false;
                
                schema.Columns.Add(colvarProductID);
                
                TableSchema.TableColumn colvarCategoryID = new TableSchema.TableColumn(schema);
                colvarCategoryID.ColumnName = "CategoryID";
                colvarCategoryID.DataType = DbType.Int32;
                colvarCategoryID.MaxLength = 0;
                colvarCategoryID.AutoIncrement = false;
                colvarCategoryID.IsNullable = true;
                colvarCategoryID.IsPrimaryKey = false;
                colvarCategoryID.IsForeignKey = false;
                colvarCategoryID.IsReadOnly = false;
                
                schema.Columns.Add(colvarCategoryID);
                
                TableSchema.TableColumn colvarSubSectorID = new TableSchema.TableColumn(schema);
                colvarSubSectorID.ColumnName = "SubSectorID";
                colvarSubSectorID.DataType = DbType.Int32;
                colvarSubSectorID.MaxLength = 0;
                colvarSubSectorID.AutoIncrement = false;
                colvarSubSectorID.IsNullable = true;
                colvarSubSectorID.IsPrimaryKey = false;
                colvarSubSectorID.IsForeignKey = false;
                colvarSubSectorID.IsReadOnly = false;
                
                schema.Columns.Add(colvarSubSectorID);
                
                TableSchema.TableColumn colvarSectorID = new TableSchema.TableColumn(schema);
                colvarSectorID.ColumnName = "SectorID";
                colvarSectorID.DataType = DbType.Int32;
                colvarSectorID.MaxLength = 0;
                colvarSectorID.AutoIncrement = false;
                colvarSectorID.IsNullable = true;
                colvarSectorID.IsPrimaryKey = false;
                colvarSectorID.IsForeignKey = false;
                colvarSectorID.IsReadOnly = false;
                
                schema.Columns.Add(colvarSectorID);
                
                TableSchema.TableColumn colvarBrandID = new TableSchema.TableColumn(schema);
                colvarBrandID.ColumnName = "BrandID";
                colvarBrandID.DataType = DbType.Int32;
                colvarBrandID.MaxLength = 0;
                colvarBrandID.AutoIncrement = false;
                colvarBrandID.IsNullable = true;
                colvarBrandID.IsPrimaryKey = false;
                colvarBrandID.IsForeignKey = false;
                colvarBrandID.IsReadOnly = false;
                
                schema.Columns.Add(colvarBrandID);
                
                TableSchema.TableColumn colvarAdvertiserID = new TableSchema.TableColumn(schema);
                colvarAdvertiserID.ColumnName = "AdvertiserID";
                colvarAdvertiserID.DataType = DbType.Int32;
                colvarAdvertiserID.MaxLength = 0;
                colvarAdvertiserID.AutoIncrement = false;
                colvarAdvertiserID.IsNullable = true;
                colvarAdvertiserID.IsPrimaryKey = false;
                colvarAdvertiserID.IsForeignKey = false;
                colvarAdvertiserID.IsReadOnly = false;
                
                schema.Columns.Add(colvarAdvertiserID);
                
                TableSchema.TableColumn colvarAgencyID = new TableSchema.TableColumn(schema);
                colvarAgencyID.ColumnName = "AgencyID";
                colvarAgencyID.DataType = DbType.Int32;
                colvarAgencyID.MaxLength = 0;
                colvarAgencyID.AutoIncrement = false;
                colvarAgencyID.IsNullable = true;
                colvarAgencyID.IsPrimaryKey = false;
                colvarAgencyID.IsForeignKey = false;
                colvarAgencyID.IsReadOnly = false;
                
                schema.Columns.Add(colvarAgencyID);
                
                TableSchema.TableColumn colvarBetweenAvenue = new TableSchema.TableColumn(schema);
                colvarBetweenAvenue.ColumnName = "BetweenAvenue";
                colvarBetweenAvenue.DataType = DbType.String;
                colvarBetweenAvenue.MaxLength = 300;
                colvarBetweenAvenue.AutoIncrement = false;
                colvarBetweenAvenue.IsNullable = true;
                colvarBetweenAvenue.IsPrimaryKey = false;
                colvarBetweenAvenue.IsForeignKey = false;
                colvarBetweenAvenue.IsReadOnly = false;
                
                schema.Columns.Add(colvarBetweenAvenue);
                
                TableSchema.TableColumn colvarPhotoCode = new TableSchema.TableColumn(schema);
                colvarPhotoCode.ColumnName = "PhotoCode";
                colvarPhotoCode.DataType = DbType.Int32;
                colvarPhotoCode.MaxLength = 0;
                colvarPhotoCode.AutoIncrement = false;
                colvarPhotoCode.IsNullable = true;
                colvarPhotoCode.IsPrimaryKey = false;
                colvarPhotoCode.IsForeignKey = false;
                colvarPhotoCode.IsReadOnly = false;
                
                schema.Columns.Add(colvarPhotoCode);
                
                TableSchema.TableColumn colvarDateAdded = new TableSchema.TableColumn(schema);
                colvarDateAdded.ColumnName = "DateAdded";
                colvarDateAdded.DataType = DbType.DateTime;
                colvarDateAdded.MaxLength = 0;
                colvarDateAdded.AutoIncrement = false;
                colvarDateAdded.IsNullable = false;
                colvarDateAdded.IsPrimaryKey = false;
                colvarDateAdded.IsForeignKey = false;
                colvarDateAdded.IsReadOnly = false;
                
                schema.Columns.Add(colvarDateAdded);
                
                TableSchema.TableColumn colvarDateModified = new TableSchema.TableColumn(schema);
                colvarDateModified.ColumnName = "DateModified";
                colvarDateModified.DataType = DbType.DateTime;
                colvarDateModified.MaxLength = 0;
                colvarDateModified.AutoIncrement = false;
                colvarDateModified.IsNullable = false;
                colvarDateModified.IsPrimaryKey = false;
                colvarDateModified.IsForeignKey = false;
                colvarDateModified.IsReadOnly = false;
                
                schema.Columns.Add(colvarDateModified);
                
                TableSchema.TableColumn colvarBrandCode = new TableSchema.TableColumn(schema);
                colvarBrandCode.ColumnName = "BrandCode";
                colvarBrandCode.DataType = DbType.Int32;
                colvarBrandCode.MaxLength = 0;
                colvarBrandCode.AutoIncrement = false;
                colvarBrandCode.IsNullable = true;
                colvarBrandCode.IsPrimaryKey = false;
                colvarBrandCode.IsForeignKey = false;
                colvarBrandCode.IsReadOnly = false;
                
                schema.Columns.Add(colvarBrandCode);
                
                TableSchema.TableColumn colvarBrandName = new TableSchema.TableColumn(schema);
                colvarBrandName.ColumnName = "BrandName";
                colvarBrandName.DataType = DbType.String;
                colvarBrandName.MaxLength = 255;
                colvarBrandName.AutoIncrement = false;
                colvarBrandName.IsNullable = true;
                colvarBrandName.IsPrimaryKey = false;
                colvarBrandName.IsForeignKey = false;
                colvarBrandName.IsReadOnly = false;
                
                schema.Columns.Add(colvarBrandName);
                
                TableSchema.TableColumn colvarProductCode = new TableSchema.TableColumn(schema);
                colvarProductCode.ColumnName = "ProductCode";
                colvarProductCode.DataType = DbType.Int32;
                colvarProductCode.MaxLength = 0;
                colvarProductCode.AutoIncrement = false;
                colvarProductCode.IsNullable = true;
                colvarProductCode.IsPrimaryKey = false;
                colvarProductCode.IsForeignKey = false;
                colvarProductCode.IsReadOnly = false;
                
                schema.Columns.Add(colvarProductCode);
                
                TableSchema.TableColumn colvarProductName = new TableSchema.TableColumn(schema);
                colvarProductName.ColumnName = "ProductName";
                colvarProductName.DataType = DbType.String;
                colvarProductName.MaxLength = 255;
                colvarProductName.AutoIncrement = false;
                colvarProductName.IsNullable = true;
                colvarProductName.IsPrimaryKey = false;
                colvarProductName.IsForeignKey = false;
                colvarProductName.IsReadOnly = false;
                
                schema.Columns.Add(colvarProductName);
                
                TableSchema.TableColumn colvarProdVersionCode = new TableSchema.TableColumn(schema);
                colvarProdVersionCode.ColumnName = "ProdVersionCode";
                colvarProdVersionCode.DataType = DbType.Int32;
                colvarProdVersionCode.MaxLength = 0;
                colvarProdVersionCode.AutoIncrement = false;
                colvarProdVersionCode.IsNullable = true;
                colvarProdVersionCode.IsPrimaryKey = false;
                colvarProdVersionCode.IsForeignKey = false;
                colvarProdVersionCode.IsReadOnly = false;
                
                schema.Columns.Add(colvarProdVersionCode);
                
                TableSchema.TableColumn colvarProdVersionName = new TableSchema.TableColumn(schema);
                colvarProdVersionName.ColumnName = "ProdVersionName";
                colvarProdVersionName.DataType = DbType.String;
                colvarProdVersionName.MaxLength = 255;
                colvarProdVersionName.AutoIncrement = false;
                colvarProdVersionName.IsNullable = true;
                colvarProdVersionName.IsPrimaryKey = false;
                colvarProdVersionName.IsForeignKey = false;
                colvarProdVersionName.IsReadOnly = false;
                
                schema.Columns.Add(colvarProdVersionName);
                
                TableSchema.TableColumn colvarSectorCode = new TableSchema.TableColumn(schema);
                colvarSectorCode.ColumnName = "SectorCode";
                colvarSectorCode.DataType = DbType.Int32;
                colvarSectorCode.MaxLength = 0;
                colvarSectorCode.AutoIncrement = false;
                colvarSectorCode.IsNullable = true;
                colvarSectorCode.IsPrimaryKey = false;
                colvarSectorCode.IsForeignKey = false;
                colvarSectorCode.IsReadOnly = false;
                
                schema.Columns.Add(colvarSectorCode);
                
                TableSchema.TableColumn colvarSectorName = new TableSchema.TableColumn(schema);
                colvarSectorName.ColumnName = "SectorName";
                colvarSectorName.DataType = DbType.String;
                colvarSectorName.MaxLength = 500;
                colvarSectorName.AutoIncrement = false;
                colvarSectorName.IsNullable = true;
                colvarSectorName.IsPrimaryKey = false;
                colvarSectorName.IsForeignKey = false;
                colvarSectorName.IsReadOnly = false;
                
                schema.Columns.Add(colvarSectorName);
                
                TableSchema.TableColumn colvarSubSectorCode = new TableSchema.TableColumn(schema);
                colvarSubSectorCode.ColumnName = "SubSectorCode";
                colvarSubSectorCode.DataType = DbType.Int32;
                colvarSubSectorCode.MaxLength = 0;
                colvarSubSectorCode.AutoIncrement = false;
                colvarSubSectorCode.IsNullable = true;
                colvarSubSectorCode.IsPrimaryKey = false;
                colvarSubSectorCode.IsForeignKey = false;
                colvarSubSectorCode.IsReadOnly = false;
                
                schema.Columns.Add(colvarSubSectorCode);
                
                TableSchema.TableColumn colvarSubSectorName = new TableSchema.TableColumn(schema);
                colvarSubSectorName.ColumnName = "SubSectorName";
                colvarSubSectorName.DataType = DbType.String;
                colvarSubSectorName.MaxLength = 500;
                colvarSubSectorName.AutoIncrement = false;
                colvarSubSectorName.IsNullable = true;
                colvarSubSectorName.IsPrimaryKey = false;
                colvarSubSectorName.IsForeignKey = false;
                colvarSubSectorName.IsReadOnly = false;
                
                schema.Columns.Add(colvarSubSectorName);
                
                TableSchema.TableColumn colvarCategoryCode = new TableSchema.TableColumn(schema);
                colvarCategoryCode.ColumnName = "CategoryCode";
                colvarCategoryCode.DataType = DbType.Int32;
                colvarCategoryCode.MaxLength = 0;
                colvarCategoryCode.AutoIncrement = false;
                colvarCategoryCode.IsNullable = true;
                colvarCategoryCode.IsPrimaryKey = false;
                colvarCategoryCode.IsForeignKey = false;
                colvarCategoryCode.IsReadOnly = false;
                
                schema.Columns.Add(colvarCategoryCode);
                
                TableSchema.TableColumn colvarCategoryName = new TableSchema.TableColumn(schema);
                colvarCategoryName.ColumnName = "CategoryName";
                colvarCategoryName.DataType = DbType.String;
                colvarCategoryName.MaxLength = 255;
                colvarCategoryName.AutoIncrement = false;
                colvarCategoryName.IsNullable = true;
                colvarCategoryName.IsPrimaryKey = false;
                colvarCategoryName.IsForeignKey = false;
                colvarCategoryName.IsReadOnly = false;
                
                schema.Columns.Add(colvarCategoryName);
                
                TableSchema.TableColumn colvarMediaTypeName = new TableSchema.TableColumn(schema);
                colvarMediaTypeName.ColumnName = "MediaTypeName";
                colvarMediaTypeName.DataType = DbType.String;
                colvarMediaTypeName.MaxLength = 50;
                colvarMediaTypeName.AutoIncrement = false;
                colvarMediaTypeName.IsNullable = true;
                colvarMediaTypeName.IsPrimaryKey = false;
                colvarMediaTypeName.IsForeignKey = false;
                colvarMediaTypeName.IsReadOnly = false;
                
                schema.Columns.Add(colvarMediaTypeName);
                
                TableSchema.TableColumn colvarMediaType = new TableSchema.TableColumn(schema);
                colvarMediaType.ColumnName = "MediaTypeCode";
                colvarMediaType.DataType = DbType.Int32;
                colvarMediaType.MaxLength = 0;
                colvarMediaType.AutoIncrement = false;
                colvarMediaType.IsNullable = false;
                colvarMediaType.IsPrimaryKey = false;
                colvarMediaType.IsForeignKey = false;
                colvarMediaType.IsReadOnly = false;
                
                schema.Columns.Add(colvarMediaType);
                
                TableSchema.TableColumn colvarMediaName = new TableSchema.TableColumn(schema);
                colvarMediaName.ColumnName = "MediaName";
                colvarMediaName.DataType = DbType.String;
                colvarMediaName.MaxLength = 255;
                colvarMediaName.AutoIncrement = false;
                colvarMediaName.IsNullable = true;
                colvarMediaName.IsPrimaryKey = false;
                colvarMediaName.IsForeignKey = false;
                colvarMediaName.IsReadOnly = false;
                
                schema.Columns.Add(colvarMediaName);
                
                TableSchema.TableColumn colvarAdvertiserCode = new TableSchema.TableColumn(schema);
                colvarAdvertiserCode.ColumnName = "AdvertiserCode";
                colvarAdvertiserCode.DataType = DbType.Int32;
                colvarAdvertiserCode.MaxLength = 0;
                colvarAdvertiserCode.AutoIncrement = false;
                colvarAdvertiserCode.IsNullable = true;
                colvarAdvertiserCode.IsPrimaryKey = false;
                colvarAdvertiserCode.IsForeignKey = false;
                colvarAdvertiserCode.IsReadOnly = false;
                
                schema.Columns.Add(colvarAdvertiserCode);
                
                TableSchema.TableColumn colvarAdvertiserName = new TableSchema.TableColumn(schema);
                colvarAdvertiserName.ColumnName = "AdvertiserName";
                colvarAdvertiserName.DataType = DbType.String;
                colvarAdvertiserName.MaxLength = 255;
                colvarAdvertiserName.AutoIncrement = false;
                colvarAdvertiserName.IsNullable = true;
                colvarAdvertiserName.IsPrimaryKey = false;
                colvarAdvertiserName.IsForeignKey = false;
                colvarAdvertiserName.IsReadOnly = false;
                
                schema.Columns.Add(colvarAdvertiserName);
                
                TableSchema.TableColumn colvarAgencyCode = new TableSchema.TableColumn(schema);
                colvarAgencyCode.ColumnName = "AgencyCode";
                colvarAgencyCode.DataType = DbType.Int32;
                colvarAgencyCode.MaxLength = 0;
                colvarAgencyCode.AutoIncrement = false;
                colvarAgencyCode.IsNullable = true;
                colvarAgencyCode.IsPrimaryKey = false;
                colvarAgencyCode.IsForeignKey = false;
                colvarAgencyCode.IsReadOnly = false;
                
                schema.Columns.Add(colvarAgencyCode);
                
                TableSchema.TableColumn colvarAgencyName = new TableSchema.TableColumn(schema);
                colvarAgencyName.ColumnName = "AgencyName";
                colvarAgencyName.DataType = DbType.String;
                colvarAgencyName.MaxLength = 255;
                colvarAgencyName.AutoIncrement = false;
                colvarAgencyName.IsNullable = true;
                colvarAgencyName.IsPrimaryKey = false;
                colvarAgencyName.IsForeignKey = false;
                colvarAgencyName.IsReadOnly = false;
                
                schema.Columns.Add(colvarAgencyName);
                
                TableSchema.TableColumn colvarCarrierName = new TableSchema.TableColumn(schema);
                colvarCarrierName.ColumnName = "CarrierName";
                colvarCarrierName.DataType = DbType.String;
                colvarCarrierName.MaxLength = 200;
                colvarCarrierName.AutoIncrement = false;
                colvarCarrierName.IsNullable = true;
                colvarCarrierName.IsPrimaryKey = false;
                colvarCarrierName.IsForeignKey = false;
                colvarCarrierName.IsReadOnly = false;
                
                schema.Columns.Add(colvarCarrierName);
                
                TableSchema.TableColumn colvarVisibilityName = new TableSchema.TableColumn(schema);
                colvarVisibilityName.ColumnName = "VisibilityName";
                colvarVisibilityName.DataType = DbType.String;
                colvarVisibilityName.MaxLength = 100;
                colvarVisibilityName.AutoIncrement = false;
                colvarVisibilityName.IsNullable = true;
                colvarVisibilityName.IsPrimaryKey = false;
                colvarVisibilityName.IsForeignKey = false;
                colvarVisibilityName.IsReadOnly = false;
                
                schema.Columns.Add(colvarVisibilityName);
                
                
                BaseSchema = schema;
                //add this schema to the provider
                //so we can query it later
                DataService.Providers["Adex"].AddSchema("vOutDoorLog",schema);
            }

        }

        #endregion
        
        #region Query Accessor
	    public static Query CreateQuery()
	    {
		    return new Query(Schema);
	    }

	    #endregion
	    
	    #region .ctors
	    public VOutDoorLog()
	    {
            SetSQLProps();
            SetDefaults();
            MarkNew();
        }

        public VOutDoorLog(bool useDatabaseDefaults)
	    {
		    SetSQLProps();
		    if(useDatabaseDefaults)
		    {
				ForceDefaults();
			}

			MarkNew();
	    }

	    
	    public VOutDoorLog(object keyID)
	    {
		    SetSQLProps();
		    LoadByKey(keyID);
	    }

    	 
	    public VOutDoorLog(string columnName, object columnValue)
        {
            SetSQLProps();
            LoadByParam(columnName,columnValue);
        }

        
	    #endregion
	    
	    #region Props
	    
          
        [XmlAttribute("OutdoorLogID")]
        public int OutdoorLogID 
	    {
		    get
		    {
			    return GetColumnValue<int>("OutdoorLogID");
		    }

            set 
		    {
			    SetColumnValue("OutdoorLogID", value);
            }

        }

	      
        [XmlAttribute("CountryID")]
        public byte? CountryID 
	    {
		    get
		    {
			    return GetColumnValue<byte?>("CountryID");
		    }

            set 
		    {
			    SetColumnValue("CountryID", value);
            }

        }

	      
        [XmlAttribute("RFDate")]
        public DateTime? RFDate 
	    {
		    get
		    {
			    return GetColumnValue<DateTime?>("RFDate");
		    }

            set 
		    {
			    SetColumnValue("RFDate", value);
            }

        }

	      
        [XmlAttribute("MediaCode")]
        public int? MediaCode 
	    {
		    get
		    {
			    return GetColumnValue<int?>("MediaCode");
		    }

            set 
		    {
			    SetColumnValue("MediaCode", value);
            }

        }

	      
        [XmlAttribute("TimeStart")]
        public int? TimeStart 
	    {
		    get
		    {
			    return GetColumnValue<int?>("TimeStart");
		    }

            set 
		    {
			    SetColumnValue("TimeStart", value);
            }

        }

	      
        [XmlAttribute("TimeEnd")]
        public int? TimeEnd 
	    {
		    get
		    {
			    return GetColumnValue<int?>("TimeEnd");
		    }

            set 
		    {
			    SetColumnValue("TimeEnd", value);
            }

        }

	      
        [XmlAttribute("TimeStartFormatted")]
        public string TimeStartFormatted 
	    {
		    get
		    {
			    return GetColumnValue<string>("TimeStartFormatted");
		    }

            set 
		    {
			    SetColumnValue("TimeStartFormatted", value);
            }

        }

	      
        [XmlAttribute("TimeEndFormatted")]
        public string TimeEndFormatted 
	    {
		    get
		    {
			    return GetColumnValue<string>("TimeEndFormatted");
		    }

            set 
		    {
			    SetColumnValue("TimeEndFormatted", value);
            }

        }

	      
        [XmlAttribute("Size")]
        public int? Size 
	    {
		    get
		    {
			    return GetColumnValue<int?>("Size");
		    }

            set 
		    {
			    SetColumnValue("Size", value);
            }

        }

	      
        [XmlAttribute("Quality")]
        public string Quality 
	    {
		    get
		    {
			    return GetColumnValue<string>("Quality");
		    }

            set 
		    {
			    SetColumnValue("Quality", value);
            }

        }

	      
        [XmlAttribute("RealCost")]
        public decimal? RealCost 
	    {
		    get
		    {
			    return GetColumnValue<decimal?>("RealCost");
		    }

            set 
		    {
			    SetColumnValue("RealCost", value);
            }

        }

	      
        [XmlAttribute("LatLong")]
        public string LatLong 
	    {
		    get
		    {
			    return GetColumnValue<string>("LatLong");
		    }

            set 
		    {
			    SetColumnValue("LatLong", value);
            }

        }

	      
        [XmlAttribute("NoOfAds")]
        public int? NoOfAds 
	    {
		    get
		    {
			    return GetColumnValue<int?>("NoOfAds");
		    }

            set 
		    {
			    SetColumnValue("NoOfAds", value);
            }

        }

	      
        [XmlAttribute("TotalAdsInThatLocation")]
        public int? TotalAdsInThatLocation 
	    {
		    get
		    {
			    return GetColumnValue<int?>("TotalAdsInThatLocation");
		    }

            set 
		    {
			    SetColumnValue("TotalAdsInThatLocation", value);
            }

        }

	      
        [XmlAttribute("TypeOfAds")]
        public int? TypeOfAds 
	    {
		    get
		    {
			    return GetColumnValue<int?>("TypeOfAds");
		    }

            set 
		    {
			    SetColumnValue("TypeOfAds", value);
            }

        }

	      
        [XmlAttribute("VisibilityCode")]
        public int? VisibilityCode 
	    {
		    get
		    {
			    return GetColumnValue<int?>("VisibilityCode");
		    }

            set 
		    {
			    SetColumnValue("VisibilityCode", value);
            }

        }

	      
        [XmlAttribute("VerificationDate")]
        public DateTime? VerificationDate 
	    {
		    get
		    {
			    return GetColumnValue<DateTime?>("VerificationDate");
		    }

            set 
		    {
			    SetColumnValue("VerificationDate", value);
            }

        }

	      
        [XmlAttribute("VerificationDesc")]
        public string VerificationDesc 
	    {
		    get
		    {
			    return GetColumnValue<string>("VerificationDesc");
		    }

            set 
		    {
			    SetColumnValue("VerificationDesc", value);
            }

        }

	      
        [XmlAttribute("CarrierCode")]
        public int? CarrierCode 
	    {
		    get
		    {
			    return GetColumnValue<int?>("CarrierCode");
		    }

            set 
		    {
			    SetColumnValue("CarrierCode", value);
            }

        }

	      
        [XmlAttribute("ProdVersionID")]
        public int? ProdVersionID 
	    {
		    get
		    {
			    return GetColumnValue<int?>("ProdVersionID");
		    }

            set 
		    {
			    SetColumnValue("ProdVersionID", value);
            }

        }

	      
        [XmlAttribute("ProductID")]
        public int? ProductID 
	    {
		    get
		    {
			    return GetColumnValue<int?>("ProductID");
		    }

            set 
		    {
			    SetColumnValue("ProductID", value);
            }

        }

	      
        [XmlAttribute("CategoryID")]
        public int? CategoryID 
	    {
		    get
		    {
			    return GetColumnValue<int?>("CategoryID");
		    }

            set 
		    {
			    SetColumnValue("CategoryID", value);
            }

        }

	      
        [XmlAttribute("SubSectorID")]
        public int? SubSectorID 
	    {
		    get
		    {
			    return GetColumnValue<int?>("SubSectorID");
		    }

            set 
		    {
			    SetColumnValue("SubSectorID", value);
            }

        }

	      
        [XmlAttribute("SectorID")]
        public int? SectorID 
	    {
		    get
		    {
			    return GetColumnValue<int?>("SectorID");
		    }

            set 
		    {
			    SetColumnValue("SectorID", value);
            }

        }

	      
        [XmlAttribute("BrandID")]
        public int? BrandID 
	    {
		    get
		    {
			    return GetColumnValue<int?>("BrandID");
		    }

            set 
		    {
			    SetColumnValue("BrandID", value);
            }

        }

	      
        [XmlAttribute("AdvertiserID")]
        public int? AdvertiserID 
	    {
		    get
		    {
			    return GetColumnValue<int?>("AdvertiserID");
		    }

            set 
		    {
			    SetColumnValue("AdvertiserID", value);
            }

        }

	      
        [XmlAttribute("AgencyID")]
        public int? AgencyID 
	    {
		    get
		    {
			    return GetColumnValue<int?>("AgencyID");
		    }

            set 
		    {
			    SetColumnValue("AgencyID", value);
            }

        }

	      
        [XmlAttribute("BetweenAvenue")]
        public string BetweenAvenue 
	    {
		    get
		    {
			    return GetColumnValue<string>("BetweenAvenue");
		    }

            set 
		    {
			    SetColumnValue("BetweenAvenue", value);
            }

        }

	      
        [XmlAttribute("PhotoCode")]
        public int? PhotoCode 
	    {
		    get
		    {
			    return GetColumnValue<int?>("PhotoCode");
		    }

            set 
		    {
			    SetColumnValue("PhotoCode", value);
            }

        }

	      
        [XmlAttribute("DateAdded")]
        public DateTime DateAdded 
	    {
		    get
		    {
			    return GetColumnValue<DateTime>("DateAdded");
		    }

            set 
		    {
			    SetColumnValue("DateAdded", value);
            }

        }

	      
        [XmlAttribute("DateModified")]
        public DateTime DateModified 
	    {
		    get
		    {
			    return GetColumnValue<DateTime>("DateModified");
		    }

            set 
		    {
			    SetColumnValue("DateModified", value);
            }

        }

	      
        [XmlAttribute("BrandCode")]
        public int? BrandCode 
	    {
		    get
		    {
			    return GetColumnValue<int?>("BrandCode");
		    }

            set 
		    {
			    SetColumnValue("BrandCode", value);
            }

        }

	      
        [XmlAttribute("BrandName")]
        public string BrandName 
	    {
		    get
		    {
			    return GetColumnValue<string>("BrandName");
		    }

            set 
		    {
			    SetColumnValue("BrandName", value);
            }

        }

	      
        [XmlAttribute("ProductCode")]
        public int? ProductCode 
	    {
		    get
		    {
			    return GetColumnValue<int?>("ProductCode");
		    }

            set 
		    {
			    SetColumnValue("ProductCode", value);
            }

        }

	      
        [XmlAttribute("ProductName")]
        public string ProductName 
	    {
		    get
		    {
			    return GetColumnValue<string>("ProductName");
		    }

            set 
		    {
			    SetColumnValue("ProductName", value);
            }

        }

	      
        [XmlAttribute("ProdVersionCode")]
        public int? ProdVersionCode 
	    {
		    get
		    {
			    return GetColumnValue<int?>("ProdVersionCode");
		    }

            set 
		    {
			    SetColumnValue("ProdVersionCode", value);
            }

        }

	      
        [XmlAttribute("ProdVersionName")]
        public string ProdVersionName 
	    {
		    get
		    {
			    return GetColumnValue<string>("ProdVersionName");
		    }

            set 
		    {
			    SetColumnValue("ProdVersionName", value);
            }

        }

	      
        [XmlAttribute("SectorCode")]
        public int? SectorCode 
	    {
		    get
		    {
			    return GetColumnValue<int?>("SectorCode");
		    }

            set 
		    {
			    SetColumnValue("SectorCode", value);
            }

        }

	      
        [XmlAttribute("SectorName")]
        public string SectorName 
	    {
		    get
		    {
			    return GetColumnValue<string>("SectorName");
		    }

            set 
		    {
			    SetColumnValue("SectorName", value);
            }

        }

	      
        [XmlAttribute("SubSectorCode")]
        public int? SubSectorCode 
	    {
		    get
		    {
			    return GetColumnValue<int?>("SubSectorCode");
		    }

            set 
		    {
			    SetColumnValue("SubSectorCode", value);
            }

        }

	      
        [XmlAttribute("SubSectorName")]
        public string SubSectorName 
	    {
		    get
		    {
			    return GetColumnValue<string>("SubSectorName");
		    }

            set 
		    {
			    SetColumnValue("SubSectorName", value);
            }

        }

	      
        [XmlAttribute("CategoryCode")]
        public int? CategoryCode 
	    {
		    get
		    {
			    return GetColumnValue<int?>("CategoryCode");
		    }

            set 
		    {
			    SetColumnValue("CategoryCode", value);
            }

        }

	      
        [XmlAttribute("CategoryName")]
        public string CategoryName 
	    {
		    get
		    {
			    return GetColumnValue<string>("CategoryName");
		    }

            set 
		    {
			    SetColumnValue("CategoryName", value);
            }

        }

	      
        [XmlAttribute("MediaTypeName")]
        public string MediaTypeName 
	    {
		    get
		    {
			    return GetColumnValue<string>("MediaTypeName");
		    }

            set 
		    {
			    SetColumnValue("MediaTypeName", value);
            }

        }

	      
        [XmlAttribute("MediaType")]
        public int MediaType 
	    {
		    get
		    {
			    return GetColumnValue<int>("MediaTypeCode");
		    }

            set 
		    {
			    SetColumnValue("MediaTypeCode", value);
            }

        }

	      
        [XmlAttribute("MediaName")]
        public string MediaName 
	    {
		    get
		    {
			    return GetColumnValue<string>("MediaName");
		    }

            set 
		    {
			    SetColumnValue("MediaName", value);
            }

        }

	      
        [XmlAttribute("AdvertiserCode")]
        public int? AdvertiserCode 
	    {
		    get
		    {
			    return GetColumnValue<int?>("AdvertiserCode");
		    }

            set 
		    {
			    SetColumnValue("AdvertiserCode", value);
            }

        }

	      
        [XmlAttribute("AdvertiserName")]
        public string AdvertiserName 
	    {
		    get
		    {
			    return GetColumnValue<string>("AdvertiserName");
		    }

            set 
		    {
			    SetColumnValue("AdvertiserName", value);
            }

        }

	      
        [XmlAttribute("AgencyCode")]
        public int? AgencyCode 
	    {
		    get
		    {
			    return GetColumnValue<int?>("AgencyCode");
		    }

            set 
		    {
			    SetColumnValue("AgencyCode", value);
            }

        }

	      
        [XmlAttribute("AgencyName")]
        public string AgencyName 
	    {
		    get
		    {
			    return GetColumnValue<string>("AgencyName");
		    }

            set 
		    {
			    SetColumnValue("AgencyName", value);
            }

        }

	      
        [XmlAttribute("CarrierName")]
        public string CarrierName 
	    {
		    get
		    {
			    return GetColumnValue<string>("CarrierName");
		    }

            set 
		    {
			    SetColumnValue("CarrierName", value);
            }

        }

	      
        [XmlAttribute("VisibilityName")]
        public string VisibilityName 
	    {
		    get
		    {
			    return GetColumnValue<string>("VisibilityName");
		    }

            set 
		    {
			    SetColumnValue("VisibilityName", value);
            }

        }

	    
	    #endregion
    
	    #region Columns Struct
	    public struct Columns
	    {
		    
		    
            public static string OutdoorLogID = @"OutdoorLogID";
            
            public static string CountryID = @"CountryID";
            
            public static string RFDate = @"RFDate";
            
            public static string MediaCode = @"MediaCode";
            
            public static string TimeStart = @"TimeStart";
            
            public static string TimeEnd = @"TimeEnd";
            
            public static string TimeStartFormatted = @"TimeStartFormatted";
            
            public static string TimeEndFormatted = @"TimeEndFormatted";
            
            public static string Size = @"Size";
            
            public static string Quality = @"Quality";
            
            public static string RealCost = @"RealCost";
            
            public static string LatLong = @"LatLong";
            
            public static string NoOfAds = @"NoOfAds";
            
            public static string TotalAdsInThatLocation = @"TotalAdsInThatLocation";
            
            public static string TypeOfAds = @"TypeOfAds";
            
            public static string VisibilityCode = @"VisibilityCode";
            
            public static string VerificationDate = @"VerificationDate";
            
            public static string VerificationDesc = @"VerificationDesc";
            
            public static string CarrierCode = @"CarrierCode";
            
            public static string ProdVersionID = @"ProdVersionID";
            
            public static string ProductID = @"ProductID";
            
            public static string CategoryID = @"CategoryID";
            
            public static string SubSectorID = @"SubSectorID";
            
            public static string SectorID = @"SectorID";
            
            public static string BrandID = @"BrandID";
            
            public static string AdvertiserID = @"AdvertiserID";
            
            public static string AgencyID = @"AgencyID";
            
            public static string BetweenAvenue = @"BetweenAvenue";
            
            public static string PhotoCode = @"PhotoCode";
            
            public static string DateAdded = @"DateAdded";
            
            public static string DateModified = @"DateModified";
            
            public static string BrandCode = @"BrandCode";
            
            public static string BrandName = @"BrandName";
            
            public static string ProductCode = @"ProductCode";
            
            public static string ProductName = @"ProductName";
            
            public static string ProdVersionCode = @"ProdVersionCode";
            
            public static string ProdVersionName = @"ProdVersionName";
            
            public static string SectorCode = @"SectorCode";
            
            public static string SectorName = @"SectorName";
            
            public static string SubSectorCode = @"SubSectorCode";
            
            public static string SubSectorName = @"SubSectorName";
            
            public static string CategoryCode = @"CategoryCode";
            
            public static string CategoryName = @"CategoryName";
            
            public static string MediaTypeName = @"MediaTypeName";
            
            public static string MediaType = @"MediaTypeCode";
            
            public static string MediaName = @"MediaName";
            
            public static string AdvertiserCode = @"AdvertiserCode";
            
            public static string AdvertiserName = @"AdvertiserName";
            
            public static string AgencyCode = @"AgencyCode";
            
            public static string AgencyName = @"AgencyName";
            
            public static string CarrierName = @"CarrierName";
            
            public static string VisibilityName = @"VisibilityName";
            
	    }

	    #endregion
    }

}

